package com.sykj.bsc.zjj.mapper;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;

import com.sykj.bsc.rwl.po.SysMenu;
import com.sykj.bsc.zjj.bean.Bis_custom_user;
import com.sykj.bsc.zjj.bean.Bis_shop;
import com.sykj.bsc.zjj.bean.Bis_shop_post;
import com.sykj.bsc.zjj.bean.Bis_shop_user;

/**
 * mapper接口
 * 主表是Bis_shop_user 店铺用户信息表
 * @author Lenovo G50-80
 *
 */
public interface Bis_shop_userMapper {
	/**
	 * 查询所有
	 * Bis_shop_user
	 * 店铺用户信息表
	 * @param bis_shop_user
	 * @return
	 */
	public List<Map> selectBis_shop_user(Bis_shop_user bis_shop_user);
	
	/**
	 * 查询店铺名称
	 * Bis_shop
	 * 店铺信息表
	 * @return
	 */
	@Select("SELECT * FROM bis_shop")
	public List<Bis_shop> selectBis_shop();
	
	/**
	 * 查询职位
	 * Bis_shop_post
	 * 店铺职位信息表
	 * @return
	 */
	@Select("SELECT * FROM bis_shop_post")
	public List<Bis_shop_post> seListBis_shop_post();
	
	/**
	 * 添加
	 * Bis_shop_user
	 * 店铺用户信息表
	 * @param bis_shop_user
	 */
	@Insert("INSERT INTO bis_shop_user (shop_user_id,user_type,shop_id,account,username,password,photo,work_number,sex,post_code,entry_date,mobile,phone,email,born_date,idno,address,linkman,linkphone,status,is_del,remark,create_time,create_user_id) VALUES(#{shop_user_id},'2',#{shop_id},#{account},#{username},#{password},#{photo},#{work_number},#{sex},#{post_code},#{entry_date},#{mobile},#{phone},#{email},#{born_date},#{idno},#{address},#{linkman},#{linkphone},#{status},'0',#{remark},NOW(),#{create_user_id})")
	public void insertBis_shop_user(Bis_shop_user bis_shop_user);
	
	/**
	 * 根据ID查询
	 * Bis_shop_user
	 * 店铺用户信息表
	 * @param shop_user_id
	 * @return
	 */
	@Select("SELECT * FROM bis_shop_user WHERE shop_user_id=#{shop_user_id}")
	public Bis_shop_user findByIdBis_shop_user(String shop_user_id);
	
	/**
	 * 修改
	 * Bis_shop_user
	 * 店铺用户信息表
	 * @param bis_shop_user
	 */
	@Update("UPDATE bis_shop_user SET shop_id=#{shop_id},account=#{account},username=#{username},photo=#{photo},work_number=#{work_number},sex=#{sex},post_code=#{post_code},entry_date=#{entry_date},mobile=#{mobile},phone=#{phone},email=#{email},born_date=#{born_date},idno=#{idno},address=#{address},linkman=#{linkman},linkphone=#{linkphone},status=#{status},remark=#{remark},modify_time=NOW(),modify_user_id=#{modify_user_id} WHERE shop_user_id=#{shop_user_id}")
	public void updateBis_shop_user(Bis_shop_user bis_shop_user);
	
	/**
	 * 删除
	 * 这里是修改了用户状态
	* Bis_shop_user
	 * 店铺用户信息表
	 * @param bis_shop_user
	 */
	@Update("UPDATE bis_shop_user SET is_del='1' WHERE shop_user_id=#{shop_user_id}")
	public void deleteBis_shop_user(Bis_shop_user bis_shop_user);
	
	/**
	 * 查询店铺员工信息表
	 * 判断员工账户是否重复
	 * @param account
	 * @return
	 */
	@Select("SELECT COUNT(*) FROM bis_shop_user WHERE account=#{account}")
	public Integer findByIdBis_shop_useraccount(String account);
	
	/**
	 * 查询店铺员工信息表
	 * 判断员工手机号是否重复
	 * @param mobile
	 * @return
	 */
	@Select("SELECT COUNT(*) FROM bis_shop_user WHERE mobile=#{mobile}")
	public Integer findByIdBis_shop_usermobile(String mobile);
	
	/**
	 * 查询店铺员工信息表
	 * 判断员工身份证是否重复
	 * @param idno
	 * @return
	 */
	@Select("SELECT COUNT(*) FROM bis_shop_user WHERE idno=#{idno}")
	public Integer findByIdBis_shop_useridno(String idno);
	
	/**
	 * 查询店铺员工信息表
	 * 判断员工邮箱是否重复
	 * @param email
	 * @return
	 */
	@Select("SELECT COUNT(*) FROM bis_shop_user WHERE email=#{email}")
	public Integer findByIdBis_shop_useremail(String email);
	
	/**
	 * 查询店铺员工信息表
	 * 判断员工电话是否重复
	 * @param phone
	 * @return
	 */
	@Select("SELECT COUNT(*) FROM bis_shop_user WHERE phone=#{phone}")
	public Integer findByIdBis_shop_userphone(String phone);
	
	/**
	 * 查询店铺员工信息表
	 * 判断员工紧急联系电话是否重复
	 * @param linkphone
	 * @return
	 */
	@Select("SELECT COUNT(*) FROM bis_shop_user WHERE linkphone=#{linkphone}")
	public Integer findByIdBis_shop_userlinkphone(String linkphone);
	
	/**
	 * 查询所有菜单
	 * @return
	 */
	public List<SysMenu> selectShopMenu();
	
	
	/**
	 * 创建人：池磊
	 * 用途：根据用户手机号查询用户 用于登录验证
	 * getMobileBis_custom_user
	 * @param map
	 * @return
	 */
	public Bis_custom_user getMobileBis_custom_user(Map map);
	
	/**
	 * 创建人：池磊
	 * 用途：用于给用户注册账号时进行检查
	 * @param map
	 * @return
	 */
	public Bis_custom_user getBis_custom_userByid(String mobile);
	/**
	 * 创建人：池磊
	 * 用途：用于给用户注册账号
	 */
	public void saveBis_custom_user(Map map);
	
	/**
	 * 创建人：池磊
	 * 用途：用于修改用户账号信息
	 */
	public void updateBis_custom_user(Map map);
	
	
	
}
